call

您所在的位置:网站首页 dos set命令 call

call

2024-01-19 05:06| 来源: 网络整理| 查看: 265

call 项目 03/09/2023

从另一个批处理程序调用一个批处理程序,而不停止父批处理程序。 call 命令接受标签作为调用的目标。

注意

在脚本或批处理文件外部使用 call 时,它在命令提示符下不起作用。

语法 call [drive:][path] []] call [: []] 参数 参数 描述 [:][] 指定要调用的批处理程序的位置和名称。 参数 是必需的,并且它必须具有 .bat 或 .cmd 扩展名。 指定批处理程序所需的任何命令行信息。 : 指定希望批处理程序控件跳转到的标签。 指定要传递到批处理程序的新实例的命令行信息(从 : 开始)。 /? 在命令提示符下显示帮助。 批处理参数

下表列出了批处理脚本自变量引用(%0、%1、...)。

在批处理脚本中使用 %* 值会引用所有自变量(例如:%1、%2、%3...)。

可以使用以下可选语法作为批处理参数的替换 (%n):

批处理参数 描述 %~1 展开 %1 并删除周围的引号。 %~f1 将 %1 扩展为完全限定路径。 %~d1 仅将 %1 扩展为驱动器号。 %~p1 仅将 %1 扩展为路径。 %~n1 仅将 %1 扩展为文件名。 %~x1 仅将 %1 扩展为文件扩展名。 %~s1 将 %1 扩展为仅包含短名称的完全限定路径。 %~a1 将 %1 扩展为文件属性。 %~t1 将 %1 扩展为文件的日期和时间。 %~z1 将 %1 扩展为文件的大小。 %~$PATH:1 搜索 PATH 环境变量中列出的目录,然后将 %1 扩展为找到的第一个目录的完全限定名称。 如果未定义环境变量名称或搜索找不到该文件,则此修饰符将扩展为空字符串。

下表显示了如何将修饰符与复合结果的批处理参数组合在一起:

带修饰符的批处理参数 描述 %~dp1 仅将 %1 扩展为驱动器号和路径。 %~nx1 仅将 %1 扩展为文件名和扩展名。 %~dp$PATH:1 在 PATH 环境变量中列出的目录中搜索 %1,然后扩展为找到的第一个目录的驱动器号和路径。 %~ftza1 展开 %1 以显示类似于 dir 命令的输出。

在上述示例中,%1 和 PATH 可被替换为其他有效值。 语法 %~ 由有效的自变量编号终止。 修饰符 %~ 不能与 %* 一起使用。

注解

使用批处理参数:

批处理参数可以包含可以传递给批处理程序的任何信息,包括命令行选项、文件名、批处理参数 %0 到 %9 以及变量(例如 %baud%)。

使用 参数:

通过将 call 与 参数一起使用,可以创建新的批处理文件上下文,并将控件传递给指定标签后的语句。 第一次遇到批处理文件的结尾时(即跳转到标签后),控件会返回到 call 语句后的语句。 第二次遇到批处理文件的结尾时,会退出批处理脚本。

使用管道和重定向符号:

请勿将管道 (|) 或重定向符号()与 call 一起使用。

进行递归调用

可以创建一个调用自身的批处理程序。 但是,必须提供退出条件。 否则,父批处理程序和子批处理程序可能会无限循环。

使用命令扩展

如果启用了命令扩展,call 将接受 作为调用的目标。 正确的语法为 call : 。

示例

若要从另一个批处理程序运行 checknew.bat 程序,请在父批处理程序中键入以下命令:

call checknew

如果父批处理程序接受两个批处理参数,并且你希望它将这些参数传递给 checknew.bat,请在父批处理程序中键入以下命令:

call checknew %1 %2 相关链接 命令行语法项


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3